package com.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.controller.common.UserMsg;
import com.controller.reqdto.AddUserParam;
import com.controller.reqdto.LoginParam;
import com.controller.reqdto.UpdateUserParam;
import com.controller.respdto.UserLoginResp;
import com.controller.respdto.UserMsgList;
import com.repository.po.User;


/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Ruiwen
 * @since 2024-10-29
 */
public interface UserService extends IService<User> {

    /**
     * 账号密码登陆
     * @param loginParam 登陆参数
     * @return
     */
    int login(LoginParam loginParam);

    /**
     * 添加用户
     * @param addUserParam 添加用户参数
     * @return 是否添加成功
     */
    boolean addUser(AddUserParam addUserParam);

    /**
     * 获取用户信息
     * @param loginParam 登陆参数
     * @return 用户信息
     */
    UserLoginResp getUserMessage(LoginParam loginParam);

    /**
     * 获取用户列表
     * @return 用户列表
     */
    UserMsgList getUserList();

    /**
     * 更新用户信息
     * @param updateUserParam   更新用户信息参数
     * @return 是否更新成功
     */
    Boolean updateUserMsg(UpdateUserParam updateUserParam);
}
